//
//  GJAlertView.h
//  YDGJ
//
//  Created by 黄卫 on 17/2/24.
//  Copyright © 2017年 huangwei. All rights reserved.
//

#import <UIKit/UIKit.h>

/**
 *  兼容iOS7的UIAlertView、ActionSheet的系统弹框
 */
@interface GJAlertView : UIView

/**
 *  iOS的系统弹框, 已兼容iOS7的UIAlertView;
 *  注意:如果有设置cancelButton, 则取消按钮的buttonIndex为:0, 其他otherButton的Index依次加1;
 *  @param alertViewCallBackBlock 点击按钮回调Block
 */
+ (void)alertWithCallBackBlock:(UIAlertViewCallBackBlock)alertViewCallBackBlock title:(NSString *)title message:(NSString *)message  cancelButtonName:(NSString *)cancelButtonName otherButtonTitles:(NSString *)otherButtonTitles, ...NS_REQUIRES_NIL_TERMINATION ;


/**
 *  自定义ActionSheet （注意：则取消按钮的buttonIndex为:0, 其他otherButton的Index依次加1）
 *
 *  @param alertViewCallBackBlock 点击按钮回调
 *  @param cancelBlock            点击取消或点击背景退出弹框事件
 *  @param title                  标题->(支持 NSString、NSAttributedString)
 *  @param cancelButtonName       取消按钮标题->(支持 NSString、NSAttributedString)
 *  @param otherButtonTitleArr    其他按钮标题->(支持 NSString、NSAttributedString的混合数组)
 *
 *  @return 返回自定义的ActionSheet实例
 */
+ (instancetype)actionSheetBCallBlock:(UIAlertViewCallBackBlock)buttonBlock cancelBlock:(void (^)())cancelBlock WithTitle:(id)title cancelButtonTitle:(id)cancelButtonTitle otherButtonTitleArr:(NSArray *)otherButtonTitleArr;


/**
 *  获取ActionSheet上的指定按钮
 *  注意:index为所有按钮数组的角标(cancelButton的角标为0 ,其他依次加1)
 */
- (UIButton *)buttonAtIndex:(NSInteger)index;


/**
 *  给ActionSheet的指定按钮设置标题
 *  注意:index为所有按钮数组的角标(cancelButton的角标为0 ,其他依次加1)
 *
 *  @param index  所有按钮数组对应的那个角标
 *  @param title  标题->(支持 NSString、NSAttributedString)
 *  @param enable 指定的按钮之后可点击
 */
- (void)setButtonTitleToIndex:(NSInteger)index title:(id)title enable:(BOOL)enable;

@end
